package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 应用基本信息对象 tb_app_catalog
 *
 * @author ruoyi
 * @date 2025-07-23
 */
@Data
@Schema(description = "应用基本信息对象")
public class TbAppCatalog extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    @Schema(description = "自增主键")
    private Long id;

    /**
     * 应用包名
     */
    @Excel(name = "应用包名")
    @Schema(description = "应用包名")
    private String packageName;

    /**
     * 应用名称
     */
    @Excel(name = "应用名称")
    @Schema(description = "应用名称")
    private String appName;

    /**
     * 开发商
     */
    @Excel(name = "开发商")
    @Schema(description = "开发商")
    private String devSupplier;

    /**
     * 应用分类(0=通用工具 1=多媒体 2=飞行控制 3=航电系统 4=娱乐 5=军事专用)
     */
    @Excel(name = "应用分类(0=通用工具 1=多媒体 2=飞行控制 3=航电系统 4=娱乐 5=军事专用)")
    @Schema(description = "应用分类(0=通用工具 1=多媒体 2=飞行控制 3=航电系统 4=娱乐 5=军事专用)")
    private Integer packageType;



    /** 备案号 */
    @Excel(name = "备案号")
    @Schema(description = "备案号")
    private String recordNumber;

    /**
     * 最后更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "最后更新时间")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdate;

    /**
     * 最新版本号
     */
    @Excel(name = "最新版本号")
    @Schema(description = "最新版本号")
    private String lastVersion;

    /**
     * logo图片地址
     */
    @Excel(name = "logo图片地址")
    @Schema(description = "logo图片地址")
    private String logoImg;

    /**
     * 状态(0=下架 1=正常)
     */
    @Excel(name = "状态(0=下架 1=正常)")
    @Schema(description = "状态(0=下架 1=正常)")
    private Integer status;

    /**
     * 下载次数
     */
    @Excel(name = "下载次数")
    @Schema(description = "下载次数")
    private Integer downloadCount;

    /**
     * 文件大小(MB)
     */
    @Excel(name = "文件大小(MB)")
    @Schema(description = "文件大小(MB)")
    private Double fileSize;

    /**
     * 最低系统版本要求
     */
    @Excel(name = "最低系统版本要求")
    @Schema(description = "最低系统版本要求")
    private String minOsVer;




}
